package com.syyo.gulimall.product;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cache.annotation.EnableCaching;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession;


/**
 * 引入了模板引擎 thymeleaf，关闭缓存
 * springboot 默认会找templastes下的html，和static的js、css
 * 页面热部署：
 * 1、引入dev-tools
 * <p>
 * <p>
 * 7.整合redisson分布式锁框架
 * 7.1引入依赖
 * 7.2 编写配置类 MyRedissonConfig
 * 7.3 参考文档开发
 * <p>
 * 8.整合spring的缓存
 * 8.1引入依赖 spring-boot-starter-cache spring-boot-starter-redis
 * 8.2 配置redis作为缓存
 *
 * @Cacheable ：将数据保存到缓存的操作
 * @CacheEvict ： 删除缓存
 * @CachePut ： 更新缓存
 * @Caching ： 组合多个缓存操作
 * @CacheConfig ： 共享缓存配置，在同一个类上
 */
@EnableRedisHttpSession // 整合redis作为session存储
@EnableCaching
@EnableFeignClients(basePackages = "com.syyo.gulimall.product.feign")
@EnableDiscoveryClient
@MapperScan("com.syyo.gulimall.product.mapper")
@SpringBootApplication
public class GulimallProductApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallProductApplication.class, args);

        System.out.println(
                "       启动成功                   \n" +
                        "    '----'        ||      //      \n" +
                        "  //      \\\\      ||    //        \n" +
                        " ||        ||     ||   //         \n" +
                        " ||        ||     ||   \\\\         \n" +
                        "  \\\\      //      ||    \\\\        \n" +
                        "    '----'        ||      \\\\      ");
    }

}
